home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 9 / Night Owl CD-ROM (NOPV9) (Night Owl Publisher) (1993).ISO / 018a / af125.zip / AF.ENG < prev    next >
Text File  |  1993-04-05  |  17KB  |  441 lines

  1.  
  2.    -------------------------------------------------------------------------
  3.  
  4.                           A r c h i v e   F i n d e r
  5.  
  6.                                  version 1.25
  7.  
  8.    -------------------------------------------------------------------------
  9.  
  10.    What is it ?
  11.    ------------
  12.  
  13.    Archive Finder (AF) is a program that searches files on a disk. A bit
  14.    like Peter Norton's FileFind/FileLocate (FF) or WhereIs. e.g. I need to
  15.    know where my *.DOC files are located, the program finds and displays
  16.    them, very very easy.
  17.  
  18.    But since then compression era started, we have more and more files
  19.    Archived, ARJed, ZIPped, ARCed into archives. To find them out quite
  20.    quickly, very few programs were available when AF came out. This
  21.    version of Archive Finder can be compared in a way to SST from Keith
  22.    Ledbetter or to Vernon Buerg's FileView (FV), except that you get more
  23.    flexibility and *FREE SOURCE CODE* in Turbo Pascal.
  24.    This is neither Commercial nor Shareware, nor Freeware. It is real public
  25.    domain. The author has completely abandonned his rights on it. His name
  26.    must be mentionned when you use AF or part of it in a package or program.
  27.  
  28.    Archive Finder recognizes .ARJ .ZIP .PAK .ARC .LZH .ZOO and some Mac .SIT
  29.  
  30.    Archive Finder will never WRITE to your disk (except if redirected). So,
  31.    no harm, no data loss is possible. All it does is READ in a very
  32.    conventionnal way.
  33.  
  34.  
  35.    Yes, but how ?
  36.    --------------
  37.  
  38.    The correct syntax for Archive Finder is :
  39.  
  40. C:\> AF [FileMask] [-Parameter(s)] [/Parameter(s)] [...]
  41.  
  42.    The symbols `[` and `]` mean that all parameters are optional. You could
  43.    simply enter AF <Return>
  44.    (Don't... 'Could take quite a long time as this lists ALL files in and out
  45.    archives on drives C, D and E).
  46.  
  47.    [FileMask] represents the DOS definition of the files you wish to find.
  48.    So if you would like to list all the .DOC files, you would enter :
  49.  
  50. C:\> AF *.DOC <Return>
  51.  
  52.    If you omit this mask, AF considers you're looking for all the files *.*
  53.    20 different masks can be searched simultaneously.
  54.  
  55.    AF accepts another wildcard `#` which replaces any digit (`0'...`9`).
  56. C:\> AF *.###       will find HELLO.001    BACKUP.321    A.000
  57.                     but not   HELLO.01     BACKUP.12T    A.
  58.  
  59.    Since version 1.14, AF also recognizes the extended masks of 4Dos 3.x and
  60.    so NDOS's too. That means you can place then `*` at the beginning and/or
  61.    anywhere in the name or extension.
  62.    Not so clear ? Let's see some examples :
  63.  
  64. C:\> AF *A*.*     picks up every file containing an `A` in it's name or ext.
  65.                   this is identical to `AF *A`
  66.  
  67. C:\> AF *A*.*     gets every file containg an `A` in its name only, any
  68.                   extension is valid.
  69.  
  70. C:\> AF A*A.*     finds all files with name starting and ending with `A`,
  71.                   any extension.
  72.  
  73. C:\> AF A*B*A.*   searches all files with name starting and ending with `A`
  74.                   and having a `B` anywhere between the two, any extension.
  75.  
  76. AF A?B*A.*        locates all files with name starting and ending with `A`
  77.                   and having a `B` at the third position.
  78.  
  79. Remark:
  80.    Suppose you wish to search for DOC*.* files.
  81.  
  82.    Don't add systematically `.*` at the end of your masks. It's tiring.
  83.    The above example can be written easier `AF DOC*`.
  84.  
  85.    The ending `*` is not even useful since AF would add it automatically.
  86.    So `AF DOC` is tedious enough. (I am still waiting for the computer
  87.    reading in my mind, taking it's orders DIRECTLY at the source. Hope I
  88.    live long enough to `see` that !).
  89.  
  90.    The [1-9A-Z] and other enhancements of 4Dos 4.0 and Borland's Grep are
  91.    for the future (these are called `regular expressions`). Please take note
  92.    that the file AF.INC is the standalone Pascal source of the mask matching
  93.    mechanism. It's very short. Take a look at it and re-use it at will !
  94.  
  95.  
  96.    Command line parameters
  97.    -----------------------
  98.  
  99.    Parameters can be prefixed (preceeded) by either `-` or `/`. Most of
  100.    them can be cumulated together.
  101.  
  102.    Some parameters change the state of `boolean` (True/False) values.
  103.    In the list below, they are listed with a `+` or `-` sign to indicate
  104.    the default value.
  105.    You can either inverse the value or stick it to True or False. See below.
  106.  
  107.    /G+  Global search
  108.         This tells AF to search for files on disk. If this option is turned
  109.         off, AF will only search in archives.
  110.  
  111.    /R   initial diRectory
  112.         If this options is not specified, AF starts in `\` (current disk's
  113.         root directory).
  114.         /R must be immediately (no whitespace) followed by the directory
  115.         name.
  116.         e.g.: AF /RC:\UTIL
  117.         Specifying then final `\` is not necessary, except if the root
  118.         directory is asked for.
  119.  
  120.    /S+  Sub directories too
  121.         This will make AF look in the directories situated below then
  122.         initial (/R) directory.
  123.  
  124.    /C   Current directory only
  125.         This is identical to AF /R. /S+
  126.  
  127.    /M  Only this mask when searching into archives. Use this if you wish
  128.        to search in FREE*.ZIP :
  129.        AF /MFREE*.ZIP
  130.        This mask is a regular DOS mask (*DOC*.ZIP not allowed). Only one
  131.        mask is allowed here.
  132.        If this option is not set, AF looks for /M*.*
  133.  
  134.    /A  Only look for archives whatever their contents. This option is
  135.        meant to `give an idea` of the number of archives present. It only
  136.        gives the archive names (and their size if the /F parameter is
  137.        specified). You can use the /M option to only look for the LZH
  138.        archives : AF /A /M*.LZH (or AF -am*.lzh).
  139.        If you use the /F switch, you can sort the archives by size :
  140.        AF -af | Sort
  141.        You can also use file masks and the /N switch (preventing the word
  142.        `Archive` to appear). This is very useful for grouping all the archives
  143.        containing one particular kind of file to execute a command on them :
  144.        AF -A BBS.AD /N /M*.ZIP >FILELIST
  145.          ^this creates a file called FILELIST containing the full path name
  146.           of all the ZIP archives containing the file BBS.AD.
  147.           If you use 4Dos or NDos, you can then enter :
  148.        For %a in (@FILELIST) do Pkzip -d %a BBS.AD
  149.  
  150.    /P  Do not look inside the archives. This options, of course, speeds
  151.        up the search making AF act like any normal file finder.
  152.  
  153.    /E  Make AF also write the name of the archives not containing the
  154.        files matching the mask.
  155.        if the /G option is on, the directories not containing files matching
  156.        the mask(s) will also be displayed.
  157.  
  158.    /N  Only display the full path name of the files. I could have called
  159.        this option `batch mode`. It is useful to create file lists that
  160.        can be re-used by archivers or 4Dos programs or whatever.
  161.  
  162.    /W  Like Dos's /W switch for DIR : Wide display. Does only display
  163.        the file name (nor drive nor dir).
  164.  
  165.    /T  Display the size the file really occupies (if not in archive) or
  166.        the size it would occupy (if in archive) when unpacked to the
  167.        specified or implied disk. MSDOS uses disk space by clusters. So
  168.        one file, even 1 byte long occupies 512 bytes on a diskette and
  169.        at least 1024 bytes up to 8192 bytes on a hard disk depending on
  170.        the FORMAT that was made.
  171.        Specifying /T immediately followed by the name of the drive on which
  172.        you want to unpack the files, AF calculates the size it would
  173.        REALLY occupy on this particular disk. /T0 means current drive.
  174.        This options automatically activates the /F switch (display totals).
  175.  
  176.        For example:
  177.        AF /GTC /MARCHIVE.ARC *.PAS
  178.           tells the size occupied by the *.PAS files (contained in ARCHIVE.ARC)
  179.           once unpacked on disk C:
  180.        AF /GTA /MARCHIVE.ARC *.PAS
  181.           same but on A:
  182.        AF /GT0 /MARCHIVE.ARC *.PAS
  183.           if `0` (zero) is specified after the /T, AF detects what disk to
  184.           use default or the one specified by /R.
  185.        AF /GU /T- /MARCHIVE.ARC *.PAS
  186.           if you use `-` (minus sign) as the disk's name, AF will not look
  187.           for the real size. Use this when modifying an alias execution or
  188.           using the /U switch.
  189.  
  190.    /F  Display the totals. Number of files found in archives, not in archives
  191.        and total, with the respective sub-total REAL size.
  192.  
  193.    /U  Only display the totals. This automatically activates /F+ and /T0.
  194.        You can remove /F switch by specifying /F- after /U
  195.  
  196.    /*  High speed search : AF will not look for directories with an
  197.        extension like SILLYSFT.DIR
  198.        This REALLY speeds up the search. It is only active when AF does
  199.        not have to look inside archives.
  200.  
  201.    /D  Lets you select a date after and/or before which the file has been
  202.        modified.
  203.          AF *.COM /d+011580   : all .COM files modified on Jan,15 80 or after
  204.          AF *.COM /d-011590   : all .COM files modified on Jan,15 90 or before
  205.          AF *.COM /d=011590   : all .COM filed modified on Jan,15 90
  206.            same as
  207.          AF *.COM /d+011590 /d-011590
  208.        If no date is specified after /D+ /D- or /D=, it means today.
  209.          AF *.* /d=   displays all the files modified/created today
  210.  
  211.    /I  In a same way, this lets you select files to display depending on
  212.        their size.
  213.          AF *.COM /i+1024   : all .COM files greater or equal 1024 bytes
  214.          AF *.COM /i-1024   : all .COM files below   or equal 1024 bytes
  215.          AF *.COM /i=1024   : all .COM files of exactly       1024 bytes
  216.  
  217.    /L  Select which drives to search on. By default, AF looks on C, D and E.
  218.          AF *.COM /lABC     searches .COM files on A: B: et C:
  219.        /L0 (zero) means only look on current drive or /R specified
  220.  
  221.    /B  AF 1.19 and up have another look for displaying files, a bit like SST
  222.        Supersonic Search Tools from Keith Ledbetter). The /B option is used
  223.        to deactivate this look and give a more Dos-conventionnal display.
  224.  
  225.    /)  This option tells you what AF understood while parsing your
  226.        command line. VEERRRYYY useful to understand why something does not
  227.        work as you would. If you have a problem with a command line, retype
  228.        it (or recall it) and add /) or -)
  229.  
  230.  
  231. Redirections
  232. ------------
  233.  
  234. AF can be used redirected. That is using the `|` and/or `>` sign.
  235. For example, to store the result of a search in file TEMP.LST you just
  236. add >TEMP.LST to your command line :
  237. Ex: AF *.PAS >PASLIST
  238. You could also ask for a pause between pages by typing
  239. AF *.PAS | More
  240. or get the sorted archives list in a file
  241. AF /AF |Sort >LISTARCH.TXT
  242. Etc...
  243.  
  244.  
  245. Entering parameters
  246. -------------------
  247.  
  248. Note you can group commands together.
  249. Exemple :
  250.    AF -cp      same as      AF /c /p
  251. But :
  252. Parameters /M... /R... and /L... can only be at the end of such a grouping :
  253.    AF -cpm*.ZIP    is valid
  254.    AF -cp*.ZIPm    is not
  255.  
  256. You can also specify explicitely if the parameter should be activated or
  257. disabled. Just add a `+` or a `-` (minus) immediately after the command
  258. (command grouping is still possible). This is very useful to force a
  259. parameter if you use batches or synonyms/alias/doskeys.
  260. Example :
  261.    AF /C+P+   same as      AF /cp
  262.               because -c et -p are `-` by default
  263.  
  264. AF analyses the parameters one after the order from left to right. If an
  265. option appears twice on the same command line, is important :
  266.    AF /P/P  does nothing
  267.  
  268.  
  269. Examples
  270. --------
  271.  
  272. To understand all the power of AF, you should try the following examples :
  273.  
  274. Find all *.DOC files wether they are on the disk or placed in an archive :
  275.    Af *.doc
  276.  
  277. Find all *.DOC files only in archives :
  278.    Af *.doc /G-
  279.  
  280. Find all *.DOC files on the disk without looking in archives :
  281.    Af *.doc /P
  282.  
  283. Find all *.DOC files on the disk without looking into archives, searching
  284. only in directory \DOS and it's subdirectories :
  285.    Af *.doc /P /R\DOS
  286.  
  287. Find all *.DOC files on the disk, not in archives, only in directory \DOS :
  288.    Af *.doc /P /S /R\DOS
  289.  
  290. Find all *.DOC files on the disk, not in archives, only in current dir :
  291.    Af *.doc /P /C
  292.  
  293. Find all *.DOC files in the current directory and in *.ZIP archives (of current
  294. dir) :
  295.    Af *.doc /G- /C /M*.ZIP
  296.  
  297. Find all *.DOC files in the current dir and in *.ZIP archives, displaying
  298. REAL occupation size and total sizes :
  299.    Af *.doc -t0fm*.ZIP
  300.        can also be written
  301.    Af *.DOC /T0 /F /M*.ZIP
  302.  
  303. Find all *.DOC files on the disk, not in archives, displaying full path names
  304. (for use in batch files) :
  305.    Af *.doc -pn
  306.  
  307. Find all *.DOC and *.TXT files on the disk and within archives
  308.    Af *.doc *.txt
  309.  
  310. Find all *.DOC files, not in archives, on disk H: only :
  311.    Af *.doc -plh
  312.  
  313. Find all *.DOC files, only in archives being on H:
  314.    Af *.doc -glh
  315.  
  316. Find all files modified or created today
  317.    Af /PD=
  318.  
  319.  
  320. Users of 4Dos / CED / DosEdit / DosKey
  321. ---------------------------------------------
  322.  
  323. You HAVE TO make aliases (synonyms) with AF !
  324.  
  325. This is a FileFind equivalent (just faster)
  326. Syn FF AF /P /* /R%1 %2 %3      for CED
  327. FF=AF /P /* /R%1                for 4Dos
  328.  
  329. To view one/many archives in current dir (this is the most powerful one) :
  330. Syn V=AF -CG-t0M%1 -l0 %2 %3 %4     for CED
  331. V=AF -cg-t0M%1 -l0                  for 4Dos
  332. With this you can do :
  333.   v             View all archives contents
  334.   v a           View all archives, any type, name starting with an `A`
  335.   v a:*.ZIP     View all A:*.ZIP archives
  336.   v * *.DOC     View all *.DOC files contained in archives of current dir
  337.   v * /g        View everything in the current dir, inside and outside archives
  338.   and so on...
  339.  
  340. Even a DIR command (you won't get the directory names) :
  341. DDIR=AF /PC %1
  342.  
  343. A DIR displaying real file sizes :
  344. FDIR=AF -pct0f %1
  345.     p=don't look in archives
  346.     c=only in current dir
  347.    t0=detect current or specified disk
  348.     f=display totals
  349.  
  350. Remark: In the examples of FF and V, the first parameter (%1) is passed
  351.         to /R or /M. If you wish to add parameters to the command line
  352.         with a /U for instance, you will have to enter :
  353.           FF .\ /U
  354.           V * /U
  355.  
  356.           The `*` alone is the widest mask for AF. It's MSDOS *.*'s
  357.           equivalent. *.* will work also but is much tedious.
  358.  
  359.  
  360. If you missed the beginning
  361. ---------------------------
  362. I'm sorry, since version 1.25 of AF is the first English version, I won't
  363. waste time/energy translating all the list.
  364.  
  365. - 1.25  English version
  366.  
  367.  
  368. Diffusion
  369. ---------
  370.  
  371. This program is placed in public domain WITH ITS SOURCES. Anyone can use,
  372. give away, modify or include all or part of it at the only condition of
  373. explicitly giving proper credit to it's author. When I say anyone, I
  374. really MEAN it, even for commercial purposes, even for CDROMS...
  375.  
  376.  
  377. Planned changes
  378. ---------------
  379.  
  380. - Correctly handle SIT (mac) files and add CPT (mac compactor) formats
  381. - Sorts (that's not sure)
  382. - File exclusions
  383. - Limit searches to n files
  384. - Command execution on found files
  385. - improvements of -) option
  386. - Debugging of masks containing a #
  387. - Support of all TPZ archives
  388. - Use of an environment variable and/or config file to modify AF's default
  389.   options (you can recompile it if you have nearly any version of TP/BP),
  390.   changing the default options to you convenience
  391.  
  392.  
  393. Contact
  394. -------
  395.  
  396.    Minitel (France)         3615      DP
  397.                             3614      ABO
  398.                             3715/3614 LEGEND
  399.  
  400.    For BBS write to JC BOGGIO
  401.    Hermes HQ BBS (France)   (33) (1) 69 00 76 72
  402.    ILink net                PASCAL and COMPRESS conferences
  403.    (on Almac BBS)
  404.  
  405.    CompuServe (I hate it)   100117,3213
  406.  
  407.    Usenet                   cat@spia.fr.mugnet.org
  408.  
  409.    FidoNet                  via Almac BBS to JC BOGGIO but I don't have
  410.                             the node number and the correct address.
  411.  
  412.    French mail              Jean-Christophe Boggio
  413.                             8, rue de la Corne
  414.                             37370 Chemillé sur Dême
  415.                             France
  416.  
  417.  
  418. Thanks
  419. ------
  420.  
  421.    to JrB for writing LhFind (which searches in Yoshi's LZH). It was
  422.       AF's ancestor
  423.    to Philip Burns, the author of PibCat for the ZOO format
  424.    to Vernong Buerg's FileView which gave me the idea of the /W command
  425.       (i never used it before)
  426.    to Master Yoshizaki (Lharc's author) for making me discover compression
  427.    to Master Jung (RK not CG) for writing the best ever (the easiest and
  428.       most powerful) archiver, I named ARJ.
  429.    to Keith Ledbetter (SST author) for the challenge
  430.    to PkWare for their PkArc and PkZip 1.1 programs (PkZip 2.x is really
  431.       an awful bug nest. I hate being forced to use it.
  432.    to Patrick `Next` Teil for his TPZ archiver and his shell for AF
  433.    to all of those who reported bugs, ideas (GEX, California, Kadorbra,
  434.       Next, Solex and the other ones)
  435.    to you for using Archive Finder.
  436.  
  437.  
  438.  Author: Jc Boggio   Diffusion: Public domain with Turbo Pascal source code
  439. Version: 1.25             Date: March, 2 1993
  440.  
  441.